#-------------------------------------------------
#
# Project created by QtCreator 2025-05-01T22:58:48
#
#-------------------------------------------------

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = videoCapture
TEMPLATE = app

# The following define makes your compiler emit warnings if you use
# any feature of Qt which has been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0

CONFIG += c++14

SOURCES += \
        main.cpp \
        ui/ffcapwindow.cpp \
        queue/ffaframequeue.cpp \
        queue/ffapacketqueue.cpp \
        queue/ffvframequeue.cpp \
        queue/ffvpacketqueue.cpp \
        resampler/ffaresampler.cpp \
        resampler/ffvresampler.cpp \
        decoder/ffadecoder.cpp \
        decoder/ffvdecoder.cpp \
        encoder/ffaencoder.cpp \
        encoder/ffvencoder.cpp \
        demuxer/ffdemuxer.cpp \
        opengl/ffglrenderwidget.cpp\
        thread/ffadecoderthread.cpp\
        thread/ffvdecoderthread.cpp\
        thread/ffdemuxerthread.cpp \
        thread/ffthreadpool.cpp \
        thread/ffthread.cpp\
        event/ffevent.cpp \
        event/ffeventloop.cpp \
        queue/ffeventqueue.cpp \
        render/ffvrender.cpp \
        timer/fftimer.cpp \
        muxer/ffmuxer.cpp \
    thread/ffamuxerthread.cpp \
    thread/ffvmuxerthread.cpp \
    thread/ffaencoderthread.cpp \
    thread/ffvencoderthread.cpp \
    thread/ffmuxerthread.cpp


HEADERS += \
        ui/ffcapwindow.h \
        queue/ffaframequeue.h \
        queue/ffapacketqueue.h \
        queue/ffvframequeue.h \
        queue/ffvpacketqueue.h \
        resampler/ffaresampler.h \
        resampler/ffvresampler.h \
        decoder/ffadecoder.h \
        decoder/ffvdecoder.h \
        encoder/ffaencoder.h \
        demuxer/ffdemuxer.h \
        opengl/ffglrenderwidget.h \
        thread/ffadecoderthread.h \
        thread/ffvdecoderthread.h \
        player/ffplayercontext.h \
        thread/ffdemuxerthread.h \
        thread/ffthreadpool.h \
        thread/ffthread.h\
        event/ffevent.h \
        event/ffeventloop.h \
        queue/ffeventqueue.h \
        render/ffvrender.h \
        timer/fftimer.h \
        muxer/ffmuxer.h \
    thread/ffamuxerthread.h \
    thread/ffvmuxerthread.h \
    thread/ffaencoderthread.h \
    thread/ffvencoderthread.h \
    thread/ffmuxerthread.h




FORMS += \
        ui/ffcapwindow.ui \

  LIBS+= \
    -L$$PWD/lib

    LIBS+= \
        -lavcodec \
        -lavdevice \
        -lavfilter \
        -lavformat  \
        -lavutil \
        -lpostproc \
        -lswresample \
        -lswscale \

    LIBS += -lOpengl32 \
              -lglu32

INCLUDEPATH += $$PWD/include

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

RESOURCES += \
    image.qrc

DISTFILES +=


